第3节 红灯停绿灯行—识别交通信号


在上一章我们采用机器学习的方法制作了级联分类器来识别物体。这一部分通过深度学习的方法来训练识别特定物体

原理图

摄像头->大白\n树莓派: CSI/USB
大白\n树莓派-->客户端: WiFi
Note right of 大白\n树莓派: HTTP协议传送摄像头数据\n神经网络收集和训练数据\n应用级联分类器处理交通信号

识别交通信号

1.打开终端

cd ~/Desktop/learn-ai/codes/chapter5/SelfDrivingCar
cd computer
python3 rc_driver.py

2.新建一个终端窗口

cd ~/Desktop/learn-ai/codes/chapter5/SelfDrivingCar
cd raspberryPi
python3 stream_client.py

微信截图_20190822162208

本节已经使用训练好的级联分类器,可以识别STOP交通信号牌。 当识别后,小车会自动停止。

识别超声波信号

在现有的基础上,只需要再新建一个终端窗口

cd ~/Desktop/learn-ai/codes/chapter5/SelfDrivingCar
cd raspberryPi
python3 ultrasonic_client.py

把障碍物放到车前,车是不是自动停止了呢?


使用自己的分类器

通过修改rc_drive.py文件,我们也可以使用上一章中训练的级联分类器。也可以训练新的分类器,比如其他交通信号。

1.放置分类器

通过文件管理器,将上次训练的级联分类器xml文件复制到如下位置

微信截图_20191213190257

2.编辑自动驾驶文件,引用自己的分类器

cd ~/Desktop/learn-ai/codes/chapter5/self_driving_car
cd computer
# cp命令复制一个新的文件,防止对原来文件改动造成错误
sudo cp rc_driver.py rc_driver_my_object.py
sudo nano -c rc_driver_my_object.py

在箭头处,仿照上面的语法,尝试添加自己的分类器引用。

微信截图_20191213190651

完成后,按Ctrl+X,然后按Y确认并回车,来退出文本编辑器。

3.新建终端,重复上一节的操作,开始无人驾驶

cd ~/Desktop/learn-ai/codes/chapter5/SelfDrivingCar
cd computer
python3 rc_drive_my_object.py

4.新建一个终端窗口

cd ~/Desktop/learn-ai/codes/chapter5/SelfDrivingCar
cd raspberryPi
python3 stream_client.py
© 北京师范大学智慧学习研究院 all right reserved,powered by Gitbook修订时间: 2020-10-28

results matching ""

    No results matching ""

    results matching ""

      No results matching ""